package com.hutianao.gqgl.job.respository;

import com.hutianao.gqgl.job.entity.SearchJobEntity;
import com.hutianao.gqgl.menu.entity.SearchMenuEntity;
import com.hutianao.gqgl.mybatis.entity.PtJobEntity;
import com.hutianao.gqgl.mybatis.entity.PtMenuEntity;
import com.hutianao.gqgl.mybatis.entity.PtPostEntity;
import com.hutianao.gqgl.mybatis.flexigrid.PaddingEntity;
import com.hutianao.gqgl.mybatis.ztree.ZtreeEntity;
import com.hutianao.gqgl.spring.tag.entity.DictTagEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

@Mapper
public interface JobDao {

    List<ZtreeEntity> queryLeftOrganTree();

    List<PtJobEntity> queryPostInfoListByOrgan(@Param("search") SearchJobEntity search, @Param("padding") PaddingEntity padding);

    Integer queryPostInfoTotal(@Param("search")SearchJobEntity search);

    PtJobEntity queryPostInfoById(@Param("dutyId") String dutyId);

    List<DictTagEntity> queryRoleList();

    List<DictTagEntity> queryOrganList();

    void insertPostInfo(@Param("entity") PtJobEntity ptPostEntity);

    void modifyPostInfo(@Param("entity")PtJobEntity ptPostEntity);

    void deletePostById(@Param("dutyIds") String[] dutyIds);

    List<PtMenuEntity> queryRoleMenuList(@Param("search") SearchMenuEntity search, @Param("padding")PaddingEntity padding);

    Integer queryRoleMenuTotal(@Param("search")SearchMenuEntity search);
}
